package com.ruoyi.salary.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 薪酬发放对象 hr_salary_payment
 * 
 * @author gy
 * @date 2025-05-21
 */
public class HrSalaryPayment extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    private Long id;

    /** 姓名 */
    @Excel(name = "姓名")
    private String empName;

    /** 部门 */
    @Excel(name = "部门")
    private String deptName;

    /** 发放月份(yyyy-MM) */
    @Excel(name = "发放月份(yyyy-MM)")
    private String payMonth;

    /** 基本工资 */
    @Excel(name = "基本工资")
    private BigDecimal baseSalary;

    /** 奖金 */
    @Excel(name = "奖金")
    private BigDecimal bonus;

    /** 扣款 */
    @Excel(name = "扣款")
    private BigDecimal deduction;

    /** 实发工资 */
    @Excel(name = "实发工资")
    private BigDecimal actualSalary;

    /** 发放日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "发放日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date payDate;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setEmpName(String empName) 
    {
        this.empName = empName;
    }

    public String getEmpName() 
    {
        return empName;
    }

    public void setDeptName(String deptName) 
    {
        this.deptName = deptName;
    }

    public String getDeptName() 
    {
        return deptName;
    }

    public void setPayMonth(String payMonth) 
    {
        this.payMonth = payMonth;
    }

    public String getPayMonth() 
    {
        return payMonth;
    }

    public void setBaseSalary(BigDecimal baseSalary) 
    {
        this.baseSalary = baseSalary;
    }

    public BigDecimal getBaseSalary() 
    {
        return baseSalary;
    }

    public void setBonus(BigDecimal bonus) 
    {
        this.bonus = bonus;
    }

    public BigDecimal getBonus() 
    {
        return bonus;
    }

    public void setDeduction(BigDecimal deduction) 
    {
        this.deduction = deduction;
    }

    public BigDecimal getDeduction() 
    {
        return deduction;
    }

    public void setActualSalary(BigDecimal actualSalary) 
    {
        this.actualSalary = actualSalary;
    }

    public BigDecimal getActualSalary() 
    {
        return actualSalary;
    }

    public void setPayDate(Date payDate) 
    {
        this.payDate = payDate;
    }

    public Date getPayDate() 
    {
        return payDate;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("empName", getEmpName())
            .append("deptName", getDeptName())
            .append("payMonth", getPayMonth())
            .append("baseSalary", getBaseSalary())
            .append("bonus", getBonus())
            .append("deduction", getDeduction())
            .append("actualSalary", getActualSalary())
            .append("payDate", getPayDate())
            .toString();
    }
}
